home *** CD-ROM | disk | FTP | other *** search
/ Software USA 4 #11 / Software USA Volume 4.11.iso / mac / Educational / mac06 / home / demo / FAQ Kopie < prev    next >
Encoding:
Text File  |  1998-01-17  |  7.4 KB  |  89 lines  |  [TEXT/ttxt]

  1. FAQ: Mac06 - The POSIX compatible OS for Macintosh
  2.  
  3. 1. What is Mac06?
  4. "Mac06" is a lightweight environment resembling the UNIX™ programming and user interface running on top of MacOS™ 7.5.x. It is therefore virtually hardware independent within the Macintosh computer series, as the already existing device drivers are used. There are, of course, different versions for MC680x0 and PPC60x processors.
  5. The file system completely relies on the MacOS HFS and, therefore, transferring data between Mac06 and MacOS is very simple.
  6. Programs can be compiled using Symantec C++/THINK C. In this environment, even the MacToolbox (dialogs, windows etc) can be used within Mac06 executables. It is possible to start any Mac application from within the Mac06 system.
  7.  
  8. 2. Where can I download the files?
  9. Either from the info-mac archives or directly from
  10.     
  11.     http://ourworld.compuserve.com/homepages/Nikolaus_Schaller/mac06.html
  12.  
  13. Please note the COPYRIGHT and LICENCE conditions.
  14.  
  15. 3. Which hardware is supported?
  16. Regarding processors, all Macintosh, Macintosh Performa and PowerPC™ platforms are supported in principle as well as MacOS 8.0 - but they have not been tested yet. In fact, the system relies completely on the documented MacOS programming interface.
  17. Only devices mapped into the Mac06 system calls are available.
  18. These are in the current release:
  19. - monitor screen (andy LCD or CRT, any resolution and color depth)
  20. - mouse
  21. - keyboard
  22. - HFS disks (IDE, SCSI, internal, external, hard and soft, floppies and CD-ROMs)
  23. There is no serial line support and no printer support yet.
  24. TCP/IP (BSD socket calls) including UDP and DNS is (not yet much tested and reliable) supported through MacTCP and the PPP-version you have installed.
  25. The system has been compiled and tested on a Performa 5200 with MacOS 7.5.5 using Symantec C++ for Power PC version 8.0.3, and a PowerBook 165 with MacOS 7.5.5 and Think C 7.0. 
  26.  
  27. 4. What is the latest release?
  28. The latest release is mac06-0.8.
  29.  
  30. 5. When is the next release coming and what is on the roadmap?
  31. I can't announce the next release yet, but there are already too much ideas to include:
  32. - more POSIX compliance
  33. - manuals
  34. - COFF/ELF
  35. - compilers, assemblers
  36. - additional system commands
  37. - manual
  38. - higher performance of system calls
  39. - protected processes
  40. - X11R6
  41. - ...
  42. Tell me what you would like to have first.
  43.  
  44. 6. Where can I find the source code?
  45. Sorry, but there are no plans to make the source code of the kernel and the libraries public. But the initial releases with a major version number 0 (i.e. mac06-0.6, mac06-0.7, etc.) are freeware (-: Donations are welcome, of course :-). It is intended to change this to shareware for later versions (i.e. mac06-1.0, mac06-1.1, etc.) to support further development. The shareware fee will be announced in the COPYRIGHT and LICENCE notices of these versions.
  46.  
  47. 7. What does Mac06 stand for?
  48. Mac06 (pronounced "mac-oh-six") is an allusion to "POSIX" (the portable operating system standard IEEE Std. 1003.1-1988/90) and to the Macintosh operating system "MacOS". The idea to rename the system from "minux" (mini-unix) hit the author while walking at the 29th october to the "Systems 97" fair in Munich - the time the idea of the operating system began to grow from "mini" to "full sized".
  49.  
  50. 8. How are file names converted?
  51. The file name "." and all names beginning with ".." under MacOS are prefixed by two additional dots in Mac06. Therefore
  52. - "." becomes "..."
  53. - ".." becomes "...."
  54. - ".x" becomes ".x"
  55. - "..z" becomes "....z"
  56. Additionally, slash characters ("/") are replaced by ":" and blanks (" ") by underscores ("_"). Therefore, the MacOS file "..Test x/y" is listed under Mac06 as "....Test_x:y". These rules are applied vice versa for creating new files and directories. All this is done to keep the directory structure transparent.
  57. Note that the virtual files (to be correct: directories) "." and ".." are available under Mac06 only and have no direct MacOS equivalent. And, finally, please note that upper and lower case characters are distinguished!
  58.  
  59. 9. Why was Mac06 developed? There is mklinux avaliable.
  60. Yes, that is correct. But, I was waiting for two years for a real low-end version running on a Performa 5200 - and I know from several questions on the mklinux news-groups, that others are also interested. There is still the promise, that such a version is coming (kernel ported to 603) - but who knows? Maybe the 5200ers will be phased out early enough...
  61. By the way, there has been some effort in Sweden in 1995 to port the Amiga Linux to the 680x0 Macintosh and there had been the information, that code was already running. Now, there is some new discussion on a Macintosh port (linux/m68k) in comp.os.linux.m68k.
  62.  
  63. To summarize: If you wait for something to be done by others, do it yourself...
  64.  
  65. 10. How do I write appliction software for Mac06?
  66. At the current stage, there is only one solution: use Symantec C++ for Power PowerPC. A sample project can be found in /home/demo/src.
  67.  
  68. 11. How are the file creator and file type attributes handled?
  69. For reading files, the file type 'APPL' makes ll display a 'x' (for executable). For text files, the file type 'TEXT' makes read (and write) calls to convert '\n' to '\r' and vice versa.
  70. If new files are created, a kernel-builtin table (later on defined by /etc/mactags) is consulted to define the creator and type. With this table, the kernel tries to identify the file name extension (.c, .h, .doc, .zip, .gif, .sit etc.) and set the creator and type. If this fails, the file is created initially with creator '????' and type 'TEXT', and after the first write to the file, the first bytes are scanned for a magic pattern. Then, the creator and type attributes are modified accordingly. If this still fails, you should drag the file onto 'Binary Pump' which has its own (configurable) tags table.
  71. By the way, only the +w attribute (chmod u+w, u-w) is changeable.
  72.  
  73. 12. How to Quit?
  74. Either:
  75. - enter 'shutdown' in a root shell
  76. - kill all processes and type 'exit' in a root shell
  77. - press cmd-alt-ESC several times until the kernel process is displayed. Then kill this process. Repeat for the still running processes ("sh" etc.).
  78.  
  79. 13. Where does /usr/bin/sh.1 come from?
  80. This is a tribute to the way MacOS launches applications. Although MacOS 7.x is a multi-tasking system, there is the restriction, that each application can be run only once. The reason lies in the way, application configurations are stored in the ressource fork of the file. Therefore, several images of the same application code in memory could mangle up the resource fork and therefore MacOS does not permit to launch the same application several times. 
  81. If you are running a server system, you may be aware of an exeption. It is possible to set the multiLaunch flag through ResEdit. Then, the same application can be run on an AppleShare network on different machines - but still not on the same.
  82. Mac06 therefore tries to launch the original and if this fails because it is already runnung, makes a copy and runs this. Therfore, two ressource forks exist, the files have different names and MacOS will launch the application for a second time. This copy will never be deleted, but it will be reused.
  83. By calling shell scripts and some applications which fork() and exec() others, you will certainly run across this feature.
  84.  
  85. 14. Which Books to recommend?
  86. - Donald Lewine, POSIX Programmer's Guide, O'Reilly&Assoc., Inc., Sebastopol, ISBN 0-937175-73-0
  87. - Thomas Horn, Systemprogrammierung unter UNIX, VTB, Berlin, ISBN 3-341-01090-4/0863-0860
  88. Mac06©1997,1998 by HNS/DSITRI hns@computer.org
  89.